#include <iostream>  //C++的标准输入输出流头文件
using namespace std; //照抄，明天就能知道

/*
	函数重载参数类型存在兼容性的问题
	有些同学理解问题很死板：认为实参类型一定要跟形参类型一模一样才可以
	实际开发写代码的时候：建议大家写清楚类型，传递参数的严格按照类型来传
*/
int add(int a,int b)
{
	cout<<"版本1"<<endl;
	return a+b;
}

double add(double a,double b)
{
	cout<<"版本2"<<endl;
	return a+b;
}




int main()  //主函数写法跟C语言一模一样
{
	int n1=78;
	int n2=45;
	double n3=45.6;
	double n4=45.8;
	float n5=45.98;
	float n6=12.87;
	short n7=41;
	short n8=35;
	
	//两个函数名字都一样，如何区分呢？
	//编译没有错：参数可以兼容loat,shor
	add(n5,n6);  //自动匹配 add(ft),但是我没有写这种版本啊
	add(n7,n8);
	return 0;
}


